package cnn.user.service;

import cnn.topfox.common.DataQTO;
import cnn.topfox.common.Response;
import cnn.topfox.service.AdvancedService;
import cnn.user.dao.DeptDao;
import cnn.user.entity.DeptDTO;
import cnn.user.entity.DeptQTO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
public class DeptService extends AdvancedService<DeptDao, DeptDTO, DeptQTO> {

    @Override
    public int insert(DeptDTO dto) {
        return super.insert(dto);
    }

    @Override
    public int update(DeptDTO dto) {
        return super.update(dto);
    }

    @Override
    public int deleteByIds(Number... ids) {
        return super.deleteByIds(ids);
    }

    @Override
    public Response<List<DeptDTO>> list(DataQTO qto) {
        return super.list(qto);
    }

    /**
     * 调用自定义方法 DeptDao.test(qto)
     * @param qto
     * @return
     */
    public List<DeptDTO> test(DeptQTO qto) {
        return baseMapper.test(qto);
    }


    @Autowired
    UserService userService;
    public void test5() {
        /**
         * 下面的代码我注释掉了, 因为用户 id 字段是 整型, 可改为 字符类型后, 取消下面的注释即可, 不然报错
         */
//        UserDTO user = new UserDTO();
//        user.setId(
//                //获得一个用户的流水号 (错误的代码)---其实获取到的是 Dept表的流水号
//                userService.keyBuild().getKey("id",3)
//        );
//        user.setName("张三");
//        userService.insert(user);
    }
}